(57)【要約】【課題】  特定の開発者のみが画像形成装置の実機でデバッグモードの使用を許可されるようにする。【解決手段】  複合機１において、ＪＶＭ起動部３２は、所定のキーアプリケーション（アプリケーションプログラム２８ａ）が当該複合機１にインストールされているか否かをアプリケーション登録データ２９内の登録情報に基づいて特定し、キーアプリケーションが当該複合機１にインストールされている場合には、ＪＡＶＡ（登録商標）仮想マシン２１をデバッグモードで起動し、キーアプリケーションが当該複合機１にインストールされていない場合には、ＪＡＶＡ（登録商標）仮想マシン２１を通常モードで起動する。【選択図】  図１
2011151495.tif 000002
【特許請求の範囲】
【請求項１】
当該画像形成装置の内部装置を制御するためのアプリケーションを実行可能なプラットホームと、
当該画像形成装置にインストールされておりかつ前記プラットホームで実行可能な１または複数のアプリケーションの登録情報を記憶した記憶装置と、
所定のアプリケーションが当該画像形成装置にインストールされているか否かを前記登録情報に基づいて特定し、前記所定のアプリケーションが当該画像形成装置にインストールされている場合には、前記プラットホームをデバッグモードで起動し、前記所定のアプリケーションが当該画像形成装置にインストールされていない場合には、前記プラットホームを通常モードで起動する起動処理部と、
を備えることを特徴とする画像形成装置。
【請求項２】
当該画像形成装置へアプリケーションをインストールするアプリケーション管理部を備え、
前記起動処理部は、前記アプリケーション管理部から前記登録情報を取得して、前記所定のアプリケーションが当該画像形成装置にインストールされているか否かを特定し、
前記アプリケーション管理部は、前記所定のアプリケーションが当該画像形成装置にインストールされる際に、ライセンス情報の入力を要求し、正規のライセンス情報が入力された後にのみ、前記所定のアプリケーションをインストールすること、
を特徴とする請求項１記載の画像形成装置。
【請求項３】
前記ライセンス情報は、画像形成装置の個体ごとに固有のものであり、
前記アプリケーション管理部は、当該画像形成装置がそのライセンス情報により指定された画像形成装置である場合のみ、前記所定のアプリケーションをインストールすること、
を特徴とする請求項２記載の画像形成装置。
【請求項４】
前記ライセンス情報は、有効期限を有し、
前記アプリケーション管理部は、そのライセンス情報により指定された有効期限を過ぎた場合、前記所定のアプリケーションを前記登録情報から削除するか、前記所定のアプリケーションの前記登録情報を無効にすること、
を特徴とする請求項２記載の画像形成装置。
【請求項５】
当該画像形成装置の電源が投入されたときに前記起動処理部を動作させるシステム起動部を備えることを特徴とする請求項１記載の画像形成装置。
【請求項６】
開発端末装置と通信する通信処理部を備え、
前記プラットホームは、ＪＡＶＡ（登録商標）仮想マシンを有し、
前記所定のアプリケーションは、ＪＡＶＡ（登録商標）アプリケーションであり、
前記プラットホームは、前記通信処理部を使用してデバッグ情報を前記開発端末装置へ送信してリモートデバッグを実行すること、
を特徴とする請求項１記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関するものである。
【背景技術】
【０００２】
近年、プリンタ、コピー機、ファクシミリ装置、複合機などの画像形成装置用のアプリケーション開発環境が提案されている（例えば特許文献１参照）。このアプリケーション開発環境は、パーソナルコンピュータなどの開発用の端末装置に、開発環境のプログラム群がインストールされて実現される。
【０００３】
ある画像形成装置には、ＪＡＶＡ（登録商標）仮想マシンがインストールされているものがあり、そのような画像形成装置では、アプリケーションとしてＪＡＶＡアプリケーションが使用可能である。そのため、ＪＡＶＡアプリケーションの開発環境が提案されている。
【０００４】
上述のような開発環境では、開発対象となるアプリケーションがインストールされる機器の機能を模擬したエミュレータが、開発環境とともに、開発端末装置にインストールされ、そのエミュレータにおいてアプリケーションを動作させ、アプリケーションの挙動（つまり、アプリケーションを動作させたときの機器の動作）が検証される。このとき、開発途中では、デバッグのために、デバッグモードでエミュレータおよびアプリケーションを動作させ、ステップごとや特定のブレークポイントごとに、アプリケーションの動作を確認していき、アプリケーションの挙動を仕様通りのものに修正していく。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１８５５９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述のようなエミュレータは機種ごとに用意する必要があり、エミュレータ自体がバグを内包する可能性もあることから、本来的に実機でアプリケーションの挙動を検証することが好ましい。
【０００７】
しかしながら、実機に動作モードとしてデバッグモードを設け、不特定の者がデバッグモードを実行可能とすると、不用意にデバッグモードが使用され、実機で不具合が発生する可能性がある。このため、画像形成装置のメーカや販売会社が指定した特定の開発者のみがデバッグモードの使用を許可されることが望ましいが、上述の技術では困難である。
【０００８】
本発明は、上記の問題に鑑みてなされたものであり、特定の開発者のみが実機でデバッグモードの使用を許可されるようにする画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明では以下のようにした。
【００１０】
本発明に係る画像形成装置は、当該画像形成装置の内部装置を制御するためのアプリケーションを実行可能なプラットホームと、当該画像形成装置にインストールされておりかつプラットホームで実行可能な１または複数のアプリケーションの登録情報を記憶した記憶装置と、所定のアプリケーションが当該画像形成装置にインストールされているか否かを登録情報に基づいて特定し、所定のアプリケーションが当該画像形成装置にインストールされている場合には、プラットホームをデバッグモードで起動し、所定のアプリケーションが当該画像形成装置にインストールされていない場合には、プラットホームを通常モードで起動する起動処理部とを備える。
【００１１】
これにより、所定のアプリケーション（以下、キーアプリケーションという）をインストール可能な特定の開発者のみが実機でデバッグモードの使用を許可される。
【００１２】
また、本発明に係る画像形成装置は、上記の画像形成装置に加え、次のようにしてもよい。この場合、画像形成装置は、当該画像形成装置へアプリケーションをインストールするアプリケーション管理部をさらに備える。そして、起動処理部は、アプリケーション管理部から登録情報を取得して、所定のアプリケーションが当該画像形成装置にインストールされているか否かを特定する。また、アプリケーション管理部は、所定のアプリケーションが当該画像形成装置にインストールされる際に、ライセンス情報の入力を要求し、正規のライセンス情報が入力された後にのみ、所定のアプリケーションをインストールする。
【００１３】
これにより、キーアプリケーションをインストール可能な特定の開発者を、メーカ側で限定的に指定することができる。
【００１４】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、ライセンス情報は、画像形成装置の個体ごとに固有のものであり、アプリケーション管理部は、当該画像形成装置がそのライセンス情報により指定された画像形成装置である場合のみ、所定のアプリケーションをインストールする。
【００１５】
これにより、特定の開発者がデバッグモードを使用できる画像形成装置を、特定の個体のみに制限することができる。
【００１６】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、ライセンス情報は、有効期限を有し、アプリケーション管理部は、そのライセンス情報により指定された有効期限を過ぎた場合、所定のアプリケーションを登録情報から削除するか、所定のアプリケーションの登録情報を無効にする。
【００１７】
これにより、特定の開発者がデバッグモードを使用できる期間を、特定のアプリケーションの開発期間などの特定期間のみに制限することができる。
【００１８】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、画像形成装置は、当該画像形成装置の電源が投入されたときに起動処理部を動作させるシステム起動部をさらに備える。
【００１９】
これにより、画像形成装置の起動後ただちにプラットホームが起動されるため、正規のライセンスを有さない開発者が不正にプラットホームをデバッグモードで起動させることが困難になる。
【００２０】
また、本発明に係る画像形成装置は、上記の画像形成装置のいずれかに加え、次のようにしてもよい。この場合、画像形成装置は、開発端末装置と通信する通信処理部を備え、プラットホームは、ＪＡＶＡ（登録商標）仮想マシンを有し、所定のアプリケーションは、ＪＡＶＡ（登録商標）アプリケーションであり、プラットホームは、通信処理部を使用してデバッグ情報を開発端末装置へ送信してリモートデバッグを実行する。
【００２１】
これにより、開発者は、開発端末装置を操作することで、リモードデバッグで効率的にアプリケーションのデバッグを行うことができる。
【発明の効果】
【００２２】
本発明によれば、キーアプリケーションをインストール可能な特定の開発者のみが画像形成装置の実機でデバッグモードの使用を許可されるようにすることができる。
【図面の簡単な説明】
【００２３】
【図１】図１は、本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。
【図２】図２は、図１に示す画像形成装置の動作を説明するフローチャートである。
【発明を実施するための形態】
【００２４】
以下、図に基づいて本発明の実施の形態を説明する。
【００２５】
図１は、本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。図１において、複合機１は、画像形成装置の一例であり、プリンタ１１と、スキャナ１２と、ＦＡＸ装置１３と、操作パネル１４と、通信装置１５と、記憶装置１６と、演算処理装置１７とを備える。
【００２６】
プリンタ１１は、印刷データに基づいて文書画像を印刷する内部装置である。スキャナ１２は、文書から文書画像を光学的に読み取り、文書画像の画像データを生成する内部装置である。ファクシミリ装置１３は、送信すべき文書データからファクシミリ信号を生成し送信するとともに、ファクシミリ信号を受信し文書データに変換する内部装置である。
【００２７】
また、操作パネル１４は、複合機１の筐体表面に配置され、ユーザに対して各種情報を表示する表示装置と、ユーザ操作を検出する入力装置とを有する。表示装置としては例えば液晶ディスプレイが使用される。入力装置としては、キースイッチ、タッチパネルなどが使用される。
【００２８】
また、通信装置１５は、所定の通信路を介して外部の端末装置と通信可能な装置である。通信装置１５としては、例えば、ネットワークインタフェース、モデム、ＵＳＢ（Universal Serial Bus）などの周辺機器インタフェースなどが使用される。
【００２９】
また、記憶装置１６は、各種プログラムおよび各種データを格納可能な装置である。記憶装置１６としては、ハードディスクドライブ、不揮発性メモリなどの不揮発性の記憶媒体が使用される。
【００３０】
記憶装置１６には、複合機１の動作に必要なプログラムおよびデータが予め格納されているとともに、操作パネル１４の表示装置に操作画面などのユーザインタフェース画面を表示させるための画面データ２７が予め格納されている。画面データ２７は、マークアップ言語で記述されたデータと、スクリプト言語で記述されたスクリプトとを有する。この実施の形態では、画面データ２７は、ＨＴＭＬ（Hypertext Markup Language）データと、ジャバスクリプト（JavaScript）とを有する。また、記憶装置１６には、アプリケーションプログラム２８、キーアプリケーションのアプリケーションプログラム２８ａ、アプリケーション登録データ２９などが記憶されている。アプリケーション登録データ２９は、当該複合機１にインストールされておりかつＪＡＶＡ（登録商標）仮想マシン２１で実行可能な１または複数のアプリケーションの登録情報を含む。
【００３１】
また、演算処理装置１７は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを有するコンピュータであり、記憶装置１６などからＲＡＭへプログラムをロードし、そのプログラムをＣＰＵで実行することにより、各種処理部を実現する。
【００３２】
複合機１の電源が投入されると起動処理が開始され、その起動処理において、記憶装置１６に格納されている図示せぬシステムプログラムが演算処理装置１７により実行される。このとき、まず、演算処理装置１７により、図示せぬオペレーティングシステムが実現され、ＭＦＰ起動部３１が動作し、その図示せぬオペレーティングシステム上で動作する各種プログラムの実行を開始させる。
【００３３】
ＭＦＰ起動部３１は、ウェブブラウザ２４、ウェブサーバ２５、通信処理部２６、ＪＶＭ起動部３２などの実行を開始させる。コントローラ２３およびアプリケーション管理部３３は、必要に応じて呼び出され実行される。
【００３４】
ＪＶＭ起動部３２は、ＪＡＶＡ（登録商標）仮想マシン２１を起動させる処理部である。ＪＶＭ起動部３２は、アプリケーション登録データ２９に含まれる登録情報をアプリケーション管理部３３から取得して、その登録情報に基づいて、キーアプリケーション（アプリケーションプログラム２８ａ）が当該複合機１にインストールされているか否かを特定し、キーアプリケーションがインストールされている場合には、ＪＡＶＡ（登録商標）仮想マシン２１をデバッグモードで起動し、キーアプリケーションがインストールされていない場合には、ＪＡＶＡ（登録商標）仮想マシン２１を通常モードで起動する。
【００３５】
アプリケーション管理部３３は、当該複合機１における、アプリケーションのインストール、アンインストールなどのライフサイクルを管理する処理部である。アプリケーション管理部３３は、アプリケーションプログラム２８，２８ａをインストールすると、そのアプリケーションプログラム２８，２８ａの属性情報（名称、ベンダ、バージョン、ライセンス情報、使用期限など）を上述の登録情報としてアプリケーション登録データ２９に書き込む。また、アプリケーション管理部３３は、アプリケーションプログラム２８，２８ａをアンインストールしたり、使用期限が切れたりすると、そのアプリケーションプログラム２８，２８ａの登録情報をアプリケーション登録データ２９から削除する。したがって、アプリケーション登録データ２９を参照することで、あるアプリケーションが有効にインストールされているか否かを判定することができる。
【００３６】
ＪＡＶＡ（登録商標）仮想マシン２１は、アプリケーションプログラム２８に基づくアプリケーション２２を実行可能な実行基盤（つまり、プラットホーム）である。この実施の形態では、ＪＡＶＡ（登録商標）仮想マシン２１で、ＪＡＶＡアプリケーションが実行可能である。
【００３７】
アプリケーション２２は、ＪＡＶＡ（登録商標）仮想マシン２１上でアプリケーションプログラムが実行されて形成される処理部である。アプリケーション２２は、コントローラＡＰＩ（Application Program Interface）などを介して、その処理実行命令により指定される動作をコントローラ２３に実行させる。これにより、コントローラ２３が、プリンタ１１、スキャナ１２、およびファクシミリ装置１３を制御して、処理実行命令により指定される動作を実行させる。
【００３８】
コントローラ２３は、プリンタ１１、スキャナ１２、およびファクシミリ装置１３を制御するとともに、それらとの間でデータ入出力を行う処理部である。なお、コントローラ２３を使用するために、コントローラＡＰＩが実装されている。コントローラＡＰＩは、プリンタ１１、スキャナ１２、およびファクシミリ装置１３の機能を実行させたり、それらとの間でデータ入出力を実行させたりする際に、ＪＡＶＡ（登録商標）仮想マシン２１上で動作するアプリケーションからの指令に従って、コントローラ２３を動作させる。
【００３９】
ウェブブラウザ２４は、ＨＴＴＰ（Hypertext Transfer Protocol）でウェブサーバ２５と通信するウェブクライアント機能、およびマークアップ言語のデータを解釈しそのデータに従って画面を表示させる画面表示機能を有する。ウェブブラウザ２４は、操作パネル１４における表示装置にユーザインタフェース画面を表示させるとともに、ユーザインタフェース画面に対する入力に対応するコマンドをウェブサーバ２５へ送信する。ユーザインタフェース画面は、操作ボタンなどの操作部を有し、ユーザによるこの複合機１の操作および設定の入力に使用される。
【００４０】
ウェブサーバ２５は、複合機１内のウェブブラウザ２４、外部のウェブブラウザなどのウェブクライアントとＨＴＴＰで通信し、そのウェブクライアントからのＨＴＴＰコマンドを受信する。ウェブサーバ２５は、ウェブブラウザ２４からコマンドを受信する。
【００４１】
通信処理部２６は、物理層としての通信装置１５を制御して所定の上位通信プロトコルでデータ通信を行う処理部である。例えば、通信処理部２６は、ＬＡＮ（Local Area Network）等のネットワークに接続され、そのネットワークに接続された開発端末装置２とＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）などでデータ通信を行う。なお、開発端末装置２は、ネットワーク機能を有し、アプリケーション開発環境をインストールされた、パーソナルコンピュータなどの端末装置である。例えば、開発端末装置２は、通信処理部２６を介してアプリケーション管理部３３へ開発中のアプリケーションプログラム２８を送信し、そのアプリケーションプログラム２８のインストールを実行させる。また、開発端末装置２は、アプリケーション開発環境において、通信処理部２６を介してＪＡＶＡ（登録商標）仮想マシン２１と通信して、リモートデバッグを実行する。
【００４２】
なお、この実施の形態では、ウェブブラウザ２４は、第１演算処理ボードにおいて実装され、ＪＡＶＡ（登録商標）仮想マシン２１、アプリケーション２２、コントローラ２３、ウェブサーバ２５、通信処理部２６、ＭＦＰ起動部３１、ＪＶＭ起動部３２およびアプリケーション管理部３３は、第２演算処理ボードにおいて実装される。第１演算処理ボードおよび第２演算処理ボードは、それぞれＣＰＵ、ＲＯＭ、ＲＡＭなどを有し、それぞれ、記憶装置１６などからＲＡＭへプログラムをロードし、そのプログラムをＣＰＵで実行することにより、各種処理部を実現する。第１演算処理ボードと第２演算処理ボードとの間はインタフェースでデータ通信が可能となっている。
【００４３】
次に、複合機１へのアプリケーションのインストールについて説明する。
【００４４】
まず、キーアプリケーションのアプリケーションプログラム２８ａを正規に有する開発者は、そのアプリケーションプログラム２８ａを複合機１にインストールする。このとき、アプリケーションプログラム２８ａは、ネットワーク等を介して複合機１に入力してもよいし、ＵＳＢメモリなどの携帯型記憶媒体から複合機１に入力してもよい。このとき、アプリケーション管理部３３は、例えば開発端末装置２に入力画面を表示させて、キーアプリケーションのライセンス情報（プロダクトキーなど）の入力を要求し、正規のライセンス情報が入力された後にのみ、そのキーアプリケーションのプログラム２８ａを記憶装置１６に格納し、アプリケーション登録データ２９に登録する（つまり、インストールする）。したがって、キーアプリケーションのライセンスを有さない開発者は、キーアプリケーションを複合機１に有効にインストールすることができない。
【００４５】
なお、ライセンス情報は、複合機１などの画像形成装置の個体ごとに固有のものとしてもよい。その場合、アプリケーション管理部３３は、当該複合機１がそのライセンス情報により指定された画像形成装置である場合のみ、キーアプリケーションのプログラム２８ａをインストールする。そのとき、例えば、アプリケーション管理部３３は、当該複合機１のシリアル番号がそのライセンス情報により指定されたシリアル番号である場合のみ、キーアプリケーションのプログラム２８ａをインストールする。
【００４６】
また、ライセンス情報は、有効期限を有してもよい。その場合、アプリケーション管理部３３は、そのライセンス情報により指定された有効期限を過ぎた場合、キーアプリケーションの登録情報をアプリケーション登録データ２９から削除したり、無効にする。
【００４７】
このように、キーアプリケーションは、メーカ等から正規にライセンスを与えられた開発者のみがインストールできる。
【００４８】
また、開発対象のアプリケーションのプログラム２８も同様に、ネットワーク等を介して複合機１に入力したり、ＵＳＢメモリなどの携帯型記憶媒体から複合機１に入力して、アプリケーション管理部３３によりインストールされる。
【００４９】
次に、複合機１の動作について説明する。図２は、図１に示す画像形成装置（複合機１）の動作を説明するフローチャートである。
【００５０】
まず、複合機１の電源が投入されると、演算処理装置１７は、図示せぬシステムプログラムを起動して、オペレーティングシステムを動作させ、さらに、ＭＦＰ起動部３１を動作させる（ステップＳ１）。
【００５１】
ＭＦＰ起動部３１は、ＪＶＭ起動部３２等を実行させる。ＪＶＭ起動部３２は、アプリケーション管理部３３を使用して、キーアプリケーションがインストールされているか否かを判定し（ステップＳ２）、キーアプリケーションがインストールされている場合には、デバッグモードでＪＡＶＡ（登録商標）仮想マシン２１を起動する（ステップＳ３）。
【００５２】
デバッグモードでＪＡＶＡ（登録商標）仮想マシン２１が起動された後、開発対象のアプリケーション２８に基づいてアプリケーション２２を起動すると（ステップＳ４）、ＪＡＶＡ（登録商標）仮想マシン２１と開発端末装置２の開発環境との間でデバッグ情報の送受を行ってリモートデバッグが実行される（ステップＳ５）。このとき、ＪＡＶＡ（登録商標）仮想マシン２１は、通信処理部２６を使用して、デバッグ情報（実行中のプログラム２８の状態）を、ステップごとあるいはブレークポイントごとに送信する。
【００５３】
一方、ＪＶＭ起動部３２は、キーアプリケーションがインストールされていない場合には、通常モードでＪＡＶＡ（登録商標）仮想マシン２１を起動する（ステップＳ６）。このため、この場合には、実機を使用してのアプリケーション２２の詳細なデバッグを行うことができない。
【００５４】
以上のように、上記実施の形態によれば、ＪＶＭ起動部３２は、キーアプリケーションが当該複合機１にインストールされているか否かをアプリケーション登録データ２９内の登録情報に基づいて特定し、キーアプリケーションが当該複合機１にインストールされている場合には、ＪＡＶＡ（登録商標）仮想マシン２１をデバッグモードで起動し、キーアプリケーションが当該複合機１にインストールされていない場合には、ＪＡＶＡ（登録商標）仮想マシン２１を通常モードで起動する。
【００５５】
これにより、キーアプリケーションをインストール可能な特定の開発者のみが実機でデバッグモードの使用を許可される。
【００５６】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００５７】
例えば、上記実施の形態において、キーアプリケーションは、デバッグモードの許可のみを目的としたダミーのアプリケーションでも、実際に何らかの処理を複合機１で行うアプリケーションでもよい。
【産業上の利用可能性】
【００５８】
本発明は、例えば、プリンタ、コピー機、ファクシミリ機、複合機などの画像形成装置に適用可能である。
【符号の説明】
【００５９】
１  複合機（画像形成装置の一例）
２  開発端末装置
１６  記憶装置
２１  ＪＡＶＡ（登録商標）仮想マシン（プラットホームの一例）
２２  アプリケーション
２８  アプリケーションプログラム
２８ａ  アプリケーションプログラム（キーアプリケーション）
２９  アプリケーション登録データ
３１  ＭＦＰ起動部（システム起動部の一例）
３２  ＪＶＭ起動部（起動処理部の一例）
３３  アプリケーション管理部
【図１】
2011151495.tif 000003
【図２】
2011151495.tif 000004