(57)【要約】【課題】  制御装置に組み込むソフトウエアによる動作検証を利便性よく実行することである。【解決手段】  複合機６００の特定の機能処理を制御する制御装置と通信可能なクライアントＰＣ１００は、マウス１０９により入力される特定の操作情報を構築されるデバイスシミュレータ１０５で実行させる。そして、デバイスシミュレータ１０５によるシミュレート実行状態に基づいて、複合機６００の制御装置に組み込み可能なスクリプトを作成して、複合機６００に提供して、複合機６００の制御装置でスクリプトを実行させる特徴とする。【選択図】  図１
2008198097.tif 000002
【特許請求の範囲】
【請求項１】
特定の機能処理を制御する制御装置と通信可能な情報処理装置であって、
入力される情報に基づいて、前記制御装置に組み込むソフトウエアをシミュレートとするシミュレート手段と、
前記シミュレート手段が実行する前記組み込むソフトウエアに、前記制御装置が前記組み込みソフトウエアを実行する動作状態をログ情報として取得するためのイベントを設定したスクリプトを作成する作成手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記作成手段により作成されたスクリプトを前記制御装置に提供する提供手段と、
前記制御装置で実行される前記スクリプトの実行結果を示すログ情報を取得する取得手段と、
前記取得手段により取得されたログ情報に基づいて前記スクリプトを検証する検証手段と、
を有することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記提供手段は、前記スクリプトをネットワーク介して前記制御装置に提供することを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記提供手段は、前記スクリプトを記録媒体を介して前記制御装置に提供することを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記制御装置は、前記スクリプトに基づいて画像処理を行う画像処理装置の操作オペレーションを実行することを特徴とする請求項１記載の情報処理装置。
【請求項６】
情報処理装置と通信可能な制御装置であって、
前記情報装置で作成されたスクリプトを取得する取得手段と、
前記取得手段により取得された前記スクリプトのイベント実行結果を示すログを前記情報処理装置に通知する通知手段と、
を有することを特徴とする制御装置。
【請求項７】
前記制御装置は、画像処理装置、印刷装置、複合機の操作を制御することを特徴とする請求項６記載の制御装置。
【請求項８】
特定の機能処理を制御する制御装置と通信可能な情報処理装置におけるスクリプト処理方法であって、
入力される情報に基づいて、前記制御装置に組み込むソフトウエアをシミュレートとするシミュレート工程と、
前記シミュレート工程が実行する前記組み込むソフトウエアに、前記制御装置が前記組み込みソフトウエアを実行する動作状態をログ情報として取得するためのイベントを設定したスクリプトを作成する作成工程と、
を有することを特徴とするスクリプト処理方法。
【請求項９】
前記作成工程により作成されたスクリプトを前記制御装置に提供する提供工程と、
前記制御装置で実行される前記スクリプトの実行結果を示すログ情報を取得する取得工程と、
前記取得工程により取得されたログ情報に基づいて前記スクリプトを検証する検証工程と、
を有することを特徴とする請求項８記載のスクリプト処理方法。
【請求項１０】
前記提供工程は、前記スクリプトをネットワーク介して前記制御装置に提供することを特徴とする請求項８記載のスクリプト処理方法。
【請求項１１】
前記提供工程は、前記スクリプトを記録媒体を介して前記制御装置に提供することを特徴とする請求項８記載のスクリプト処理方法。
【請求項１２】
前記制御装置は、前記スクリプトに基づいて画像処理を行う画像処理装置の操作オペレーションを実行することを特徴とする請求項８記載のスクリプト処理方法。
【請求項１３】
情報処理装置と通信可能な制御装置におけるスクリプト処理方法であって、
前記情報装置で作成されたスクリプトを取得する取得工程と、
前記取得工程により取得された前記スクリプトのイベント実行結果を示すログを前記情報処理装置に通知する通知工程と、
を有することを特徴とするスクリプト処理方法。
【請求項１４】
前記制御装置は、画像処理装置、印刷装置、複合機の操作を制御することを特徴とする請求項６記載のスクリプト処理方法。
【請求項１５】
請求項８〜１４のいずれか１項に記載のスクリプト処理方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項１６】
請求項８〜１４のいずれか１項に記載のスクリプト処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に組み込んで実行させるスクリプトを作成処理する情報処理装置のスクリプト処理に関するものである。
【背景技術】
【０００２】
従来、組み込みソフトウエアの動作を検証する方法としては、特許文献１に記載されているように、パーソナルコンピュータやワークステーション等の計算機（以下、「ＰＣ」と呼ぶ）から組み込み環境へ選択可能なパラメータの項目を送信する。そして、組み込み環境上で対話的にパラメータを選択することにより、元のＰＣへ選択項目が送り返されて、該ＰＣ 上で動作パラメータを修正して制御を行う方式（スクリプトを用いない方式）が一般的であった。
【０００３】
また、従来、スクリプトを用いてアプリケーション（組み込みソフトウエア）の動作を検証する方法としては、ＰＣ上で組み込み環境をシミュレートするシミュレータを動作させて、該シミュレータ上で組み込みソフトウエアの動作をシミュレートする。そして、シミュレートした動作を記述したスクリプトを作成して、該スクリプトを組み込み環境で実行させることにより、動作検証を行うものが一般的であった。
【特許文献１】特表２００１−５２４２３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したスクリプトを用いない従来の方式では、ユーザが組み込み環境で対話的に操作を実行する必要がある。このため、特に同一の組み込み環境で動作検証を繰り返し実行したり、複数の組み込み環境で同一の動作検証を実行したりする際に、動作検証を実行するオペレータの負担となっていた。
【０００５】
また、スクリプトを用いる従来の方式では、組み込みソフトウエアの動作検証をバッチ処理で実行できるので、上述したオペレータの負担が軽減されるものの、デバイスの状態を診断するためのイベントの判別を詳細に実行できない。このため、組み込みソフトウエアとデバイスとの両方の状態を同時に詳しく診断することができないという問題があった。
【０００６】
また、スクリプトを用いる従来の方式では、組み込み環境において、スクリプト中に記載された組み込みソフトウエアの中からデバイス資源に対応した組み込みソフトウエアを選択し、利用可能なデバイス資源に対応する組み込みソフトウエアのみを起動して動作させることができないという問題があった。
【０００７】
つまり、組み込み環境において、スクリプトにより組み込みソフトウエアとデバイスとの両方の状態を同時に検証する処理をバッチ処理で実行することができなかった。
【０００８】
また、当該組み込み環境において利用可能な組み込みソフトウエアのみを起動して動作検証を実行することできなかった。
【０００９】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、制御装置に組み込むソフトウエアによる動作検証を利便性よく実行できるスクリプトを作成して、制御装置の動作を検証できる仕組みを提供することである。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
【００１１】
特定の機能処理を制御する制御装置と通信可能な情報処理装置であって、入力される情報に基づいて、前記制御装置に組み込むソフトウエアをシミュレートとするシミュレート手段と、前記シミュレート手段が実行する前記組み込むソフトウエアに、前記制御装置が前記組み込みソフトウエアを実行する動作状態をログ情報として取得するためのイベントを設定したスクリプトを作成する作成手段とを有することを特徴とする。
【００１２】
上記目的を達成する本発明の制御装置は以下に示す構成を備える。
【００１３】
情報処理装置と通信可能な制御装置であって、前記情報装置で作成されたスクリプトを取得する取得手段と、前記取得手段により取得された前記スクリプトのイベント実行結果を示すログを前記情報処理装置に通知する通知手段とを有することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、制御装置に組み込むソフトウエアによる動作検証を利便性よく実行できる。
【発明を実施するための最良の形態】
【００１５】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００１６】
＜システム構成の説明＞
〔第１実施形態〕
図１は、本発明の第１実施形態を示す情報処理装置の構成を説明するブロック図である。本例は、情報処理装置がネットワークに接続可能なクライアントＰＣで構成される場合に、組み込み環境シミュレータで組み込みソフトウエアに対する実際のオペレーションを実行可能な例である。本例は、情報処理装置がネットワークを介して制御装置の例である複合機６００と通信可能な情報処理システムを例とする。また、情報処理装置は、後述するスクリプトを実行する制御装置を含む画像処理装置と通信可能に接続されている。さらに制御装置は、画像処理装置以外の機器で構成されていてもよく、機器として、印刷装置、複合機が含まれる。
【００１７】
図１において、１００はクライアントＰＣで、ＣＰＵ１０１Ａ、ＲＯＭ、ＲＡＭ、ハードディスク等のハードウエア資源を備え、ＲＡＭ上に後述するモジュールをロード可能に構成されている。
【００１８】
１０１は組み込みソフトウエアであるＰｕｌｌアプリケーション（ＡＰＬ）である。ＰｕｌｌＡＰＬ１０１は、モニタ１０８から指定されたＵＲＬ等のネットワーク識別子からネットワーク１１０を介して画像やファイル等のリソースをダウンロードするＡＰＬである。ここで、ＵＲＬとは、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒである。
【００１９】
１０２は組み込みソフトウエアであるＰｒｉｎｔＡＰＬである。ＰｒｉｎｔＡＰＬ１０２は、ＰｕｌｌＡＰＬ１０１によりダウンロードされたリソースをプリンタ等の出力デバイスから印刷するアプリケーションである。
【００２０】
１０３は組み込みソフトウエアであるＳｅｎｄＡＰＬである。ＳｅｎｄＡＰＬ１０３は、ＰｕｌｌＡＰＬ１０１によりダウンロードされたリソースや、ログや機器情報などのファイルを、モニタ１０８から指定されたアドレスにネットワーク１１０を介して送信するアプリケーションである。
【００２１】
１０４は組み込み環境シミュレータ（ＩＥＳＹＭ）である。ＩＥＳＹＭ１０４は、組み込みソフトウエアであるＰｕｌｌＡＰＬ１０１、ＰｒｉｎｔＡＰＬ１０２、ＳｅｎｄＡＰＬ１０３から、デバイスシミュレータ（ＤＳＹＭ）１０５が実行するアプリケーションの組合せを管理する。
【００２２】
本実施形態では、制御装置が制御する対象機器である複合機６００に実行させる機能に対応する組み込みソフトウエアを、ＰｕｌｌＡＰＬ１０１、ＰｒｉｎｔＡＰＬ１０２、ＳｅｎｄＡＰＬ１０３とから構成している。
【００２３】
このように組み込みソフトウエア管理アプリケーションが各組み込みソフトウエアが利用するデバイス資源の情報を一括管理することにより、当該組み込み環境において利用可能な組み込みソフトウエアとして機能するスクリプトを作成することができる。なお、スクリプトは、後述するエディタで作成されるイベントが設定されているため、作成されたスクリプトが提供される制御装置では、該スクリプトを実行する際に、動作状態を示すログ情報が記録されるように制御する。また、本実施形態では、クライアントＰＣで作成されたスクリプトを制御装置を含む複合機６００に提供する方法として、ネットワークによる提供と、記録媒体による提供とを想定している。
【００２４】
このようにして作成されたログ情報を制御装置を備える複合機６００からからクライアントＰＣ１００が取得することで、作成されたスクリプトの動作検証を実行することが可能になる。
【００２５】
したがって、制御装置に組み込むソフトウエアによる動作検証を利便性よく実行できる。
【００２６】
また、ＩＥＳＹＭ１０４は、オペレータが入力機器としてのマウス１０９を用いて操作可能とするアプリケーションである。
【００２７】
１０５はシミュレート手段として機能するデバイスシミュレータ（ＤＳＹＭ）である。ＤＳＹＭ１０５は、組み込みソフトウエアであるＰｕｌｌＡＰＬ１０１、ＰｒｉｎｔＡＰＬ１０２、ＳｅｎｄＡＰＬ１０３が動作する、制御装置が組み込まれる機器、例えば複合機のデバイスをシミュレートするアプリケーションである。
【００２８】
なお、上記複合機６００が備える操作パネルの表示は、ＤＳＹＭ１０５によりモニタ１０８に表示され、マウス１０９やキーボード等の入力機器を介して操作パネルと同様にシミュレートされてオペレーションが実行される。
【００２９】
つまり、クライアントＰＣ１００によるプリンタやハードディスク（ＨＤ）への操作も複合機６００上と同様の動作を行うようにシミュレートされる。
【００３０】
１０６はオペレーティングシステム（ＯＳ）であり、各種モジュールの実行状態を管理する機能を備えている。なお、ＯＳは、クライアントＰＣ１００の構成により異なるが、特定のＯＳ（例えばWindows（登録商標））に限定されるものではない。
【００３１】
１０７はネットワークインタフェースで、通信媒体であるネットワークケーブルが接続される。１０８はモニタで、ＩＥＳＹＳ１０４により実行される複合機が備える操作パネルの表示を行う。１０９はマウスで、モニタ１０８に表示される各種のユーザインタフェース（ＵＩ）に対する指示を行うことが可能に構成されている。６００は制御装置が組み込まれる複合機である。制御装置が組み込まれる機器は、複合機に限らず、他の機能処理を実行する機器で構成されていてもよい。また、複合機６００が接続される数は、何ら制限されないが、説明上１つの例を示す。
【００３２】
図２は、図１に示したクライアントＰＣ１００と複合機６００とで実行されるワークフローを概念的に説明する図である。本例は、図１に示したクライアントＰＣ１００上の組み込み環境シミュレータ１０４から複合機６００上の組み込みソフトウエア管理アプリケーションまでのデータの流れを示した例である。なお、図１と同一のものには同一の符号を付している。
【００３３】
図２において、２００はテンプレートで、詳細を図４に示す。なお、テンプレートは、複数の行から構成され、複合機６００に対する操作命令、入力情報等を特定するテキストデータである。なお、テンプレート２００は、一例であって、制御装置が対象とする機器によって、その内容が異なる。また、テンプレート２００が複数の階層で構成される場合もある。
【００３４】
２０１はエディタで、マウス１０９や他の入力デバイス、例えばキーボードを操作することで、テンプレート２００の内容を編集する。エディタ２０１は、テンプレート２００をモニタ１０８に表示した状態で、指定した行の内容を修正したり、テンプレート２００に追加する条件文を指定された行に挿入したりすることができる。
【００３５】
２０２はスクリプトで、エディタ２０１でテンプレート２００を編集することで作成される。２０３は組み込み環境管理サーバで、作成されたスクリプト２０２をネットワーク１１０を介して複合機６００に送信する。また、複合機６００で実行されるスクリプト２０２の実行結果を受信して、その内容をチェックする機能を備えている。
【００３６】
２０４は組み込みソフトウエア管理アプリケーションで、図７に示すように複合機６００で動作するアプリケーションで、スクリプト２０２の実行経過を示す情報をログ６０４に記録する機能を備える。また、組み込みソフトウエア管理アプリケーション２０４は、スクリプト２０２の実行結果、ログ６０４、生成した画像をクライアントＰＣ１００に送信する機能を備える。
【００３７】
図３は、本実施形態を示す情報処理装置における第１のデータ処理手順の一例を示すフローチャートである。本例は、図２に示したテンプレート２００の作成、並びに、スクリプト２０２を作成する処理例である。具体的には、組み込み環境シミュレータで１０４でオペレーションを実行して、テンプレート２００を作成し、エディタ２０１で正誤判断やイベント処理の記述を追加してスクリプト２０２を作成する処理である。
【００３８】
なお、Ｓ３０１〜Ｓ３０８は各ステップを示す。また、各ステップは、クライアントＰＣ１００が備えるＣＰＵ１０１Ａが外部メモリから制御プログラムをＲＡＭにロードして実行することで実現される。
【００３９】
Ｓ３０１で、オペレータはマウス１０９等を操作することで、クライアントＰＣ１００上で動作するＩＥＳＹＭ１０４を起動する。そして、Ｓ３０２で、テンプレート２００の記録を開始する。
【００４０】
次に、Ｓ３０３で、組み込み環境シミュレータ１０４上のオペレーションパネルでログイン処理を行う。そして、Ｓ３０４で、組み込み環境シミュレータ１０４上のオペレーションパネルでテンプレート２００の各行に従いパネル操作を実行する。これにより、図４に示すテンプレート２００の各行が特定されて行く。
【００４１】
そして、Ｓ３０５で、組み込み環境シミュレータ１０４上のオペレーションパネルの操作を終了して、テンプレート２００にその内容を記録して、特定のファイル名を設定してファイルとして記憶装置に保存する。ここで、記憶装置は、ＲＡＭのような揮発性メモリであってもよいし、ハードディスク等のように不揮発性メモリであってもよい。
【００４２】
次に、Ｓ３０６で、記憶装置に保存したテンプレート２００をエディタ２０１でオープンする。ここで、オープンされたテンプレート２００は、モニタ１０８に、例えばテキストデータ形式で表示され、マウス１０９やキーボードを操作することでテンプレート２００の編集が可能となる。ここで、編集とは、各行の内容を修正する行削除、行挿入等を含む処理である。
【００４３】
次に、Ｓ３０７で、管理者は、エディタ２０１を起動して、テンプレート２００に、テンプレート２００に正誤判断や、イベント処理を記述して、図５に示すようなスクリプト２０２を作成する。なお、ここで、スクリプト２０２は、複合機６００に対して配布対象となるスクリプトである。また、配布方法は、ネットワークによる転送による配布、記憶媒体を介した配布等が含まれる。
【００４４】
次に、Ｓ３０８で、エディタ２０１によりテンプレート２００を編集が完了すると、図５に示すスクリプト２０２が作成されるので、作成したスクリプト２０２を特定のファイル名を設定して、記憶装置に保存して、本処理を終了する。
【００４５】
なお、組み込み環境シミュレータ１０４でオペレーションを実行する場合に、図１に示した組み込みソフトウエアであるＰｕｌｌＡＰＬ１０１、ＰｒｉｎｔＡＰＬ１０２、ＳｅｎｄＡＰＬ１０３も起動する。そして、ＩＥＳＹＭ１０４は、実際の複合機６００上での操作を実行（シミュレート）し、操作の記録をテンプレート２００に設定することで、最終的なテンプレート２００が作成される。
【００４６】
また、制御装置が組み込まれる機器が異なれば、すなわち、複合機６００以外の機能処理を実行する機器である場合には、組み込み環境シミュレータで１０４でのオペレーション内容を当然に異なるものとなる。本実施形態では、複合機６００を例する場合について以下詳述する。
【００４７】
図４は、図２に示したテンプレート２００の例を示す図である。テンプレート２００は、図３に示したＳ３０５で記録されるテンプレートに対応する。
【００４８】
図４において、テンプレートの「＃」で始まる行１，４，８，１１，１４，１７，２０，２３はそれぞれコメント行を示す。
【００４９】
２行目のｐｕｓｈ  ｂｕｔｔｏｎ＝ＩＤの行は、ＩＤボタンを押下する命令を示す。３行目のｗａｉｔ  ｆｏｒ  １０００  ｍｓの行は、１０００ミリ秒待つ命令を示す。５行目のｕｓｅｒｎａｍｅ＝ｕｓｅｒ１の行は、ユーザ名として文字列ｕｓｅｒ１を入力する命令を示す。６行目のｐａｓｓｗｏｒｄ＝０１２３４５の行は、パスワードとして文字列０１２３４５を入力する命令を示す。
【００５０】
９行目のｔａｐ  ｏｎ（ｘ，ｙ）＝（１２０，１３０）の行は、座標（１２０，１３０）上でタップする命令を示す。該命令により、操作パネルの画面の座標（１２０，１３０）に表示されたＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を選択することを示す。
【００５１】
１０行目のｗａｉｔ  ｆｏｒ  ３２００  ｍｓの行は、３２００ミリ秒待つ命令を示す。１２行目のｐｕｓｈ  ｂｕｔｔｏｎ＝Ｐｕｌｌの行は、プル（Ｐｕｌｌ）ボタンを押下する命令を示す。該命令により、Ｐｕｌｌアプリケーションが起動され、上記で選択されたＵＲＬからネットワークを介して、リソースをダウンロードして、ハードディスク（ＨＤ）に保存する処理を実行する。
【００５２】
１３行目のｗａｉｔ  ｆｏｒ  ２０００  ｍｓの行は、２０００ミリ秒待つ命令を示す。１５行目のｐｕｓｈ  ｂｕｔｔｏｎ＝Ｐｒｉｎｔの行は、印刷（Ｐｒｉｎｔ）ボタンを押下する命令を示す。該命令により、Ｐｒｉｎｔアプリケーションが起動され、上記で保存されたリソースを印刷する処理を実行する。さらに、該リソースをラスタライズした画像データをハードディスク（ＨＤ）に保存する処理を実行する。
【００５３】
１６行目のｗａｉｔ  ｆｏｒ  ２０００  ｍｓの行は、２０００ミリ秒待つ命令を示す。１８行目のｔａｐ  ｏｎ  （ｘ，ｙ）＝（１２０，１３０）の行は、座標（１２０，１３０）上でタップする命令を示す。該命令により、操作パネルの画面の座標（１２０，１３０）に表示されたメールアドレスを選択することを示す。
【００５４】
１９行目のｗａｉｔ  ｆｏｒ  ３２００  ｍｓの行は、３２００ミリ秒待つ命令を示す。２１行目のｐｕｓｈ  ｂｕｔｔｏｎ＝Ｓｅｎｄの行は、送信（Ｓｅｎｄ）ボタンを押下する命令を示す。該命令により、Ｓｅｎｄアプリケーションが起動され、上記で保存されたリソースをラスタライズした画像データをハードディスク（ＨＤ）から読み取る。そして、メールの本文に添付して、ネットワークを介して、上記で選択されたメールアドレスに送信する処理を実行する。
【００５５】
２２行目のｗａｉｔ  ｆｏｒ  ２０００  ｍｓの行は、２０００ミリ秒待つ命令を示す。２４行目のｐｕｓｈ  ｂｕｔｔｏｎ＝ＩＤの行は、ＩＤボタンを押して、操作を終了する命令を示す。該命令により、一連の操作は終了する。
【００５６】
次に、オペレータがエディタ２０１で記憶装置に保存されたテンプレート２００を開いて、正誤判断やイベント処理などの記述を追記して、スクリプト２０２を作成する。ここで、エディタ２０１は、例えばテキスト形式で表示可能なテンプレート２００にテキスト編集を実行可能な文字編集モジュールであれは、特に限定されることはない。したがって、クライアントＰＣ１００にインストールされている日本語処理システムを利用することも可能である。
【００５７】
図５は、図４に示したテンプレート２００から作成されるスクリプト２０２の例を示す図である。
【００５８】
図５において、スクリプトの「＃」で始まる行は１，４，８，１１，１４，１８，２１，２５，２８，３１，３５はそれぞれコメント行を示す。
【００５９】
なお、図５において下線を施した部分が上記のテンプレート２００に対してエディタ２０１による編集で追記された記述を示す。
【００６０】
例えば、１５行目の、ｅｖｅｎｔ＝ｇｅｔＥｖｅｎｔ（）の部分は、Ｐｕｌｌアプリケーション１０１を実行した後で、イベント取得関数ｇｅｔＥｖｅｎｔ（）を呼び、結果を変数ｅｖｅｎｔに入力する処理の記述を示す。
【００６１】
１６行目と１７行目の、
ｉｆ  （  ｅｖｅｎｔ  ＝＝  ”ＯＫ”  ）  ｐｒｉｎｔＬｏｇ  ”Ｐｕｌｌ：  ＯＫ”  ｅｌｓｅ  ｐｒｉｎｔＬｏｇ  ”Ｐｕｌｌ：  ＮＧ”の部分は、上記の結果がＯＫならば、ログに文字列”Ｐｕｌｌ：  ＯＫ”を記録する関数ｐｒｉｎｔＬｏｇを呼びだす。一方、結果がそれ以外の場合は、ログに文字列”Ｐｕｌｌ：  ＮＧ”を記録する関数ｐｒｉｎｔＬｏｇを呼ぶ処理の記述を示す。
【００６２】
２２行目から２４行目、および３２行目から３４行目も同様な処理の記述を示す。なお、２２行目から２４行目、および３２行目から３４行目が上記行とログに記録される文字列のみが異なる。
【００６３】
図６は、図２に示した組み込み環境管理サーバ２０３のモジュール構成を示す図である。本実施形態では、組み込み環境管理サーバ２０３は、クライアントＰＣ１００の一機能として実行可能なモジュールとして構成する場合を示す。
【００６４】
図６に示す組み込み環境管理サーバ２０３において、５００は組み込み環境管理サーバ上で動作するスクリプト管理アプリケーションを示す。
【００６５】
ここで、２０２はスクリプトで、時刻情報５０１によりスクリプトの実行タイミングをスケジュールすることができる。
【００６６】
図２に示したワークフローで示すように、作成されたスクリプト２０２は、ネットワーク１１０を介して組み込み環境管理サーバ２０３上で動作するスクリプト管理アプリケーション５００に登録される。
【００６７】
この場合、スクリプト管理アプリケーション（スクリプト管理ＡＰＬ）５００に登録する際に、スクリプト２０２を実行する時刻情報５０１も付加して、スクリプト２０２と対応づけて保存し、スクリプト２０２を実行するスケジューリングを行う。
【００６８】
そして、組み込み環境管理サーバ２０３上で動作するスクリプト管理ＡＰＬ５００は、上記の時刻情報５０１を参照する。そして、スケジューリングされた時刻になると、登録されたスクリプト２０２を各複合機６００上の組み込みソフトウエア管理ＡＰＬ２０４に配布する。本実施形態では、配布する処理は、ネットワーク１１０を介して複合機６００に転送する場合を示すが、他の配布方法であってもよい。
【００６９】
図７は、本実施形態を示す制御装置のモジュール構成を示す図である。本例では、複合機６００を制御する制御装置のモジュール例を示すが、機器は、複合機６００に限定されるものではなく、作成されたスクリプトを実行させる対象となる機器により決定される。
【００７０】
図７において、６００は複合機で、ＣＰＵ６１５がＲＯＭや外部メモリに記憶された制御プログラムをＲＡＭにロードして実行して、Ｉ／Ｏインタフェース６１６を介して、各種のデバイスの動作を制御する。ここで、デバイスとは、例えばプリンタ６１２、スキャナ６１３、ファクシミリ６１４が含まれる。
【００７１】
６０１は組み込みソフトウエアであるＰｕｌｌアプリケーションで、６０１Ａは対応するＭａｎｉｆｅｓｔファイルである。Ｐｕｌｌアプリケーション６０１とＭａｎｉｆｅｓｔファイル６０１Ａとは組として構成される。
【００７２】
ここで、Ｐｕｌｌアプリケーション６０１は、操作パネル（パネル）６０８から指定されたＵＲＬ等のネットワーク識別子からネットワーク６１０を介して画像やファイル等のリソースをダウンロードするアプリケーションである。ここで、ＵＲＬとは、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒである。
【００７３】
６０２は組み込みソフトウエアであるＰｒｉｎｔアプリケーションで、６０２Ａは対応するＭａｎｉｆｅｓｔファイルである。Ｐｒｉｎｔアプリケーション６０２とＭａｎｉｆｅｓｔファイル６０２Ａとは組として構成される。
【００７４】
Ｐｒｉｎｔアプリケーション６０２は、Ｐｕｌｌアプリケーション６０１によりダウンロードされたリソースをプリンタ６１２から印刷するアプリケーションである。
【００７５】
６０３は組み込みソフトウエアであるＳｅｎｄアプリケーションで、６０３Ａは対応するＭａｎｉｆｅｓｔファイルである。Ｓｅｎｄアプリケーション６０３とＭａｎｉｆｅｓｔファイル６０３Ａとは組として構成される。
【００７６】
Ｓｅｎｄアプリケーション６０３は、ＰｕｌｌＡＰＬ６０１によりダウンロードされたリソースや、ログ６０４や機器情報などのファイルを、操作パネル６０８から指定されたメールアドレスにネットワーク１１０を介して送信するアプリケーションである。ここで、ログ６０４は、組み込みソフトウエア管理ＡＰＬ２０４が実行するスクリプト２０２の経過情報等が記録される。
【００７７】
２０２はスクリプトで、クライアントＰＣ１００から配布される図３に示したＳ３０７で作成されるスクリプトであって、内容は、図５に示す。２０４は組み込みソフトウエア管理アプリケーションである。
【００７８】
６０４はログを示す。６０５は仮想マシン（ＶＭ）を示す。６０６はＯＳ（組み込み用オペレーティングシステム）を示す。６０７はネットワークインタフェースを示す。６０８はタッチパネル等の操作パネルを示す。６０９はＨＤ（ハードディスク）を示す。
【００７９】
図８は、本実施形態を示す情報処理装置における第２のデータ処理手順を示すフローチャートである。
【００８０】
図９は、本実施形態を示す制御装置におけるデータ処理手順を示すフローチャートである。
【００８１】
本例は、クライアントＰＣで作成したスクリプト２０２を組み込み環境管理サーバ２０３に登録して、複合機６００に配布する。そして、複合機６００上でスクリプト２０２を実行して、ログ６０４と画像を生成して、組み込み環境管理サーバ２０３に送信してチェックする。そして、組み込み環境管理サーバ２０３がチェック結果をメールで指定アドレスに送信する処理例である。
【００８２】
なお、Ｓ８０１〜Ｓ８０７、Ｓ９０１〜Ｓ９０３は各ステップを示す。Ｓ８０１〜Ｓ８０５は、クライアントＰＣ１００のＣＰＵ１０１ＡがＲＡＭ上に制御プログラムをロードして実行することで実現される。同様に、Ｓ９０１〜Ｓ９０４は、複合機６００のＣＰＵ６１５がＲＯＭに記憶される制御プログラムをＲＡＭにロードして実行することで実現される。
【００８３】
図８において、Ｓ８０１で、クライアントＰＣ１００で、ＣＰＵ１０１Ａは組み込み環境シミュレータ１０４を起動して、テンプレート２００を作成し、該テンプレート２００をエディタ２０１で編集して、スクリプト２０２を作成する。
【００８４】
次に、Ｓ８０２で、ＣＰＵ１０１Ａは、作成したスクリプト２０２を組み込み環境管理サーバ２０３に登録する。次に、Ｓ８０３で、ＣＰＵ１０１Ａは、組み込み環境管理サーバ２０３上でスクリプトを実行する時間を登録する。次に、Ｓ８０４で、ＣＰＵ１０１Ａは、ネットワークインタフェース１０７によりネットワーク１１０を介して複合機６００に配布する。
【００８５】
そして、図９において、Ｓ９０１で、ネットワーク１１０を介してクライアントＰＣ１００から送信されたスクリプト２０２を受信するのを待つ。そして、スクリプト２０２を受信したら、Ｓ９０２で、ＣＰＵ６１５は、組み込みソフトウエア管理アプリケーション２０４を起動して、複合機６００上でスクリプト２０２を実行する。
【００８６】
次に、Ｓ９０３で、ＣＰＵ６１５は、ログ６０４と画像を生成して、ネットワーク１１０を介して、生成した画像と、リソースと、ログ６０４をクライアントＰＣ１００の組み込み環境管理サーバ２０３に送信して、本処理を終了する。
【００８７】
一方、クライアントＰＣ１００では、Ｓ８０５で、上記Ｓ９０３で送信された複合機６００からの応答があるのを待つ。そして、Ｓ８０５で、ＣＰＵ１０１Ａが応答されたことを確認したら、Ｓ８０６で、組み込み環境管理サーバ２０３が複合機６００から送信されたリソース、ログ６０４、画像をチェックする。ここで実行されるチェックとは、複合機６００が実行したスクリプト２０２に基づく、スクリプト実行結果であって、リソースと画像と経過のログが含まれる。そして、組み込み環境管理サーバ２０３は、例えばＯＣＲ（光学式文字読取装置）により文字列を抽出して元のリソースから抽出した文字列との差分を計測することで、スクリプト実行結果をチェックする。
【００８８】
そして、Ｓ８０７で、組み込み環境管理サーバ２０３は、チェック結果を記録装置に記録するとともに、記憶装置に記録したチェック結果を、例えばメールで指定アドレスに送信して、本処理を終了する。ここで、指定アドレスとしては、例えば複合機のシステム管理者のアドレスを指定するのが好適である。なお、チェック結果の通知方法は、上記メールに限らず、チェック情報を画像情報として指定された送信先の、例えばファクシミリ装置に送信する等の構成であってもよい。
【００８９】
このように、本実施形態では、複合機６００の組み込みソフトウエア管理アプリケーション２０４は、配布されたスクリプト２０２を解釈して実行する。そして、組み込みソフトウエア管理アプリケーション２０４は、スクリプト２０２を実行した経過の情報は、ログ６０４に記録しておく。
【００９０】
また、組み込みソフトウエア管理ＡＰＬ２０４は、組み込みソフトウエアが使用するデバイスの機器情報をＭａｎｉｆｅｓｔファイル６０１Ａ〜６０３Ａのいずれかより読み取る。そして、組み込みソフトウエア管理ＡＰＬ２０４は、実行可能なソフトウエアと実行不可なソフトウエアとを識別して、スクリプト２０２中の実行可能なソフトウエアのみを実行する。
【００９１】
そして、実行した結果のリソースと画像と経過のログは、複合機６００からクライアントＰＣ１００に送信されて、クライアントＰＣ１００の組み込み環境管理サーバ２０３で、配布されたスクリプト２０２の実行結果のチェックを行う。
【００９２】
このようにして、配布されたスクリプト２０２の実行経過を示すログ６０４により、操作の途中でＮＧが表示されない場合は、操作が問題なく完了したことを確認できる。
【００９３】
また、操作の途中でＮＧが表示された場合は、その時点でソフトウエアまたはデバイスに不具合が生じたことを確認できる。
【００９４】
さらに、実行結果の画像をチェックすることで、結果が正しい場合は、ソフトウエアまたはデバイスの処理が問題なく完了したことを確認できる。
【００９５】
また、結果が正しく無い場合は、ソフトウエアまたはデバイスに不具合が生じたことを確認できる。
【００９６】
図１０は、図７に示したＰｕｌｌ、Ｐｒｉｎｔ、Ｓｅｎｄアプリケーションにそれぞれ対応したＭａｎｉｆｅｓｔファイルの例を示す図である。
【００９７】
図１０において、９００はＰｕｌｌアプリケーションのＭａｎｉｆｅｓｔファイルの例を示す。９０１はＰｒｉｎｔアプリケーションのＭａｎｉｆｅｓｔファイルの例を示す。９０２はＳｅｎｄアプリケーションのＭａｎｉｆｅｓｔファイルの例を示す。
【００９８】
ＰｕｌｌアプリケーションのＭａｎｉｆｅｓｔファイル９００は、Ａｐｐｌｉｃａｔｉｏｎの行で、アプリケーション名としてＰｕｌｌを使用することを指定している。
【００９９】
Ｄｅｖｉｃｅ−Ｒｅｓｏｕｒｃｅの行で、Ｏｐｅｒａｔｉｏｎ−Ｐａｎｅｌ，Ｎｅｔｗｏｒｋ，ＨＤと記述されている。これは、デバイスのリソースとして、操作パネル（Ｏｐｅｒａｔｉｏｎ−Ｐａｎｅｌ）、ネットワーク（Ｎｅｔｗｏｒｋ）、ハードディスク（ＨＤ）を使用することを指定している。
【０１００】
ここで、操作パネル、ネットワーク、ハードディスクの内、使用できないデバイスがある場合は、スクリプト中でＰｕｌｌボタンを押下する指定をしても、Ｐｕｌｌアプリケーションは起動されず、次の操作に移行して実行を続行する。
【０１０１】
ＰｒｉｎｔアプリケーションのＭａｎｉｆｅｓｔファイル９０１は、Ａｐｐｌｉｃａｔｉｏｎの行で、アプリケーション名としてＰｒｉｎｔを使用することを指定している。
【０１０２】
Ｄｅｖｉｃｅ−Ｒｅｓｏｕｒｃｅの行でＯｐｅｒａｔｉｏｎ−Ｐａｎｅｌ，Ｐｒｉｎｔｅｒ，ＨＤと記述されているが、これは、デバイスのリソースとして、
操作パネル（Ｏｐｅｒａｔｉｏｎ−Ｐａｎｅｌ）、プリンタ（Ｐｒｉｎｔｅｒ）、ハードディスク（ＨＤ）を使用することを指定している。
【０１０３】
ここで、操作パネル、プリンタ、ハードディスクの内、使用できないデバイスがある場合は、スクリプト中でＰｒｉｎｔボタンを押下する指定をしても、Ｐｒｉｎｔアプリケーションは起動されず、次の操作に移行して実行を続行する。
【０１０４】
ＳｅｎｄアプリケーションのＭａｎｉｆｅｓｔファイル９０２は、Ａｐｐｌｉｃａｔｉｏｎの行で、アプリケーション名としてＳｅｎｄを使用することを指定している。
【０１０５】
Ｄｅｖｉｃｅ−Ｒｅｓｏｕｒｃｅの行で、Ｏｐｅｒａｔｉｏｎ−Ｐａｎｅｌ，Ｎｅｔｗｏｒｋ，ＨＤと記述されている。これは、デバイスのリソースとして操作パネル（Ｏｐｅｒａｔｉｏｎ−Ｐａｎｅｌ）、ネットワーク（Ｎｅｔｗｏｒｋ）、ハードディスク（ＨＤ）を使用することを指定している。
【０１０６】
ここで、操作パネル、ネットワーク、ハードディスクの内、使用できないデバイスがある場合は、スクリプト中でＳｅｎｄボタンを押下する指定をしても、Ｓｅｎｄアプリケーションは起動されず、次の操作に移行して実行を続行する。
【０１０７】
本実施形態によれば、制御装置に組み込むソフトウエアによる動作検証を利便性よく実行できるスクリプトを作成して、制御装置の動作を検証できる。
【０１０８】
〔第２実施形態〕
上記実施形態に加えて、ＰＣ上の組み込み環境シミュレータがオペレーション毎に対応する課金情報を持ち、該課金情報を利用して組み込みソフトウエアに対する操作の課金額を合計して表示するように構成してもよい。
【０１０９】
つまり、一連のオペレーションの課金総額を見積もることを可能に構成することで、実際のチェック処理（テスト）を行う前に、課金総額を見積もり、所望の金額に対応したチェック処理を選択可能にすることができる。
【０１１０】
〔第３実施形態〕
上記実施形態に加えて、クライアントＰＣ１００の組み込み環境管理サーバ２０３がネットワークに接続している複合機の機器情報を収集し、該機器情報を組み込み環境シミュレータが選択してダウンロードするように構成してもよい。
【０１１１】
これにより、実際にオペレーションを実行する複合機の機器情報を使用して、テストチャートやスクリプトを作成することが可能となる。
【０１１２】
つまり、各複合機上では組み込み環境管理クライアントを起動して、複合機の機器情報を吸い上げて、ネットワークを介して組み込み環境管理サーバ２０３と接続し、該機器情報を送信する。
【０１１３】
例えば、機器情報としてモノクロ機とカラー機との違いを収集し、各複合機がモノクロ機かカラー機かを判別して、該機器情報を利用して組み込み環境シミュレータが複合機の環境をシミュレートする。そして、テスト用のテストチャートやスクリプトを実行することにより、実際に複合機の環境に即したきめの細かいチェック処理（テスト）を可能にするものである。
【０１１４】
〔第４実施形態〕
上記実施形態に加えて、クライアントＰＣ上の組み込み環境シミュレータを使用する代わりに、組み込み環境の複合機の実機を使用して、実機上で動作する組み込み環境シミュレータに相当するアプリケーションでオペレーションを実行してログを記録する。つまり、上述したようにクライアントＰＣでスクリプトを作成して、作成したスクリプトを組み込み環境管理サーバに登録する構成としてもよい。
【０１１５】
これにより、組み込み環境シミュレータを動作させるＰＣが不要で、複合機の実機と組み込み環境管理サーバのみで構成可能という利点がある。
【０１１６】
〔第５実施形態〕
第１実施形態は、組み込みソフトウエア管理ＡＰＬ２０４が組み込みソフトウエアやＶＭ（仮想マシン）６０５の使用するメモリやＨＤ６０９の利用状況を随時チェックし、メモリ不足の場合の診断を行い、メモリの利用状況をログ６０４に記録するものである。
【０１１７】
これに対して、組み込み環境管理サーバ２０３がログ６０４を複合機６００のシステム管理者に送信し、送信されたログ６０４を解析することにより、複合機６００のシステム管理者が必要なメモリやＨＤ６０９の診断結果を得ることができるように構成してもよい。
【０１１８】
〔第６実施形態〕
以下、図１１、図１２に示すメモリマップを参照して本発明に係る情報処理装置、制御装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０１１９】
図１１は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１２０】
図１２は、本発明に係る制御装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１２１】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１２２】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１２３】
本実施形態における図３，図８，図９に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１２４】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１２５】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２６】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１２７】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０１２８】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０１３０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１３１】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３３】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０１３４】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【図面の簡単な説明】
【０１３５】
【図１】本発明の第１実施形態を示す情報処理装置の構成を説明するブロック図である。
【図２】図１に示したクライアントＰＣと複合機とで実行されるワークフローを概念的に説明する図である。
【図３】本実施形態を示す情報処理装置における第１のデータ処理手順の一例を示すフローチャートである。
【図４】図２に示したテンプレートの例を示す図である。
【図５】図４に示したテンプレートから作成されるスクリプトの例を示す図である。
【図６】図２に示した組み込み環境管理サーバのモジュール構成を示す図である。
【図７】本実施形態を示す制御装置のモジュール構成を示す図である。
【図８】本実施形態を示す情報処理装置における第２のデータ処理手順を示すフローチャートである。
【図９】本実施形態を示す制御装置におけるデータ処理手順を示すフローチャートである。
【図１０】図７に示したＰｕｌｌ、Ｐｒｉｎｔ、Ｓｅｎｄアプリケーションにそれぞれ対応したＭａｎｉｆｅｓｔファイルの例を示す図である。
【図１１】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図１２】本発明に係る制御装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０１３６】
１００  クライアントＰＣ
１０１Ａ  ＣＰＵ
１０１  ＰｕｌｌＡＰＬ
１０２  ＰｒｉｎｔＡＰＬ
１０３  ＳｅｎｄＡＰＬ
１０４  ＩＥＳＹＭ
１０５  ＤＳＹＭ
１０６  ＯＳ
１０７  ネットワークインタフェース
６００  複合機
【図１】
2008198097.tif 000003
【図２】
2008198097.tif 000004
【図３】
2008198097.tif 000005
【図４】
2008198097.tif 000006
【図５】
2008198097.tif 000007
【図６】
2008198097.tif 000008
【図７】
2008198097.tif 000009
【図８】
2008198097.tif 000010
【図９】
2008198097.tif 000011
【図１０】
2008198097.tif 000012
【図１１】
2008198097.tif 000013
【図１２】
2008198097.tif 000014